Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Kremlin cross-compiles #76

Open
wants to merge 1 commit into
base: master
Choose a base branch
from

Conversation

wintersteiger
Copy link

Not intended to be merged as is, just a demo to show that it doesn't take all that much. I just ran CROSS=yes make and, on a proper Ubuntu machine (no WSL) it gets me very swiftly to

...:~/kremlin$ file _build/src/Kremlin.native 
_build/src/Kremlin.native: PE32+ executable (console) x86-64, for MS Windows

Those ppx options are a bit of a mess, I'm sure there's a nicer way to get those options through (e.g. in _tags, but I don't know how to get $(OCAMLLIB) into _tags).

@msprotz
Copy link
Contributor

msprotz commented Jan 30, 2018

I thought ppx_deriving was supposed to be able to deal with these cases. Perhaps worth pinging the ppx_deriving folks to see if they're missing support for cross-compilation? In any case, good news!

@wintersteiger
Copy link
Author

That would be nice if they could support cross-compilation out of the box! I must admit, I don't fully understand how it's supposed to work and I may have set up the ppx_deriving package(s) the wrong way. If those object files are not needed at link time, the *-windows package could just be a link to the build system's (non-windows) packages. I think that's pretty much the effect of those options I set.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants